Position location system

ABSTRACT

Methods and apparatus are provided for locating the position, preferably in three dimensions, of a sensor by generating magnetic fields which are detected at the sensor. The magnetic fields are generated from a plurality of locations and, in one embodiment of the invention, enable both the orientation and location of a single coil sensor to be determined. The present invention thus finds application in many areas where the use of prior art sensors comprising two or more mutually perpendicular coils is inappropriate.

This is a divisional of application Ser. No. 08/392,955, filed May 30, 1995, now issued as U.S. Pat. No. 5,913,820 on Jun. 22, 1999 and of PCT/GB93/01736 filed Aug. 16, 1993.

FIELD OF THE INVENTION

The present invention relates to methods of and apparatus for, determining the location of an object and in particular, but not exclusively to methods and apparatus which employ a magnetic field which is sensed at the object.

BACKGROUND OF THE INVENTION

It has been long appreciated that if the magnetic field around a field generating element, for example a generating coil, can be accurately mapped then it might be possible to determine the location of a field sensor, for example a sensing coil, relative to the generating coil, from the signals sensed by such a sensing coil. However, a problem associated with doing this is that there are in general many locations and/or orientations of the sensing coil within the field of the generating coil that will provide the same characteristic sensing signals in the sensing coil. In order to use a magnetic field for this purpose, additional information must therefore be provided.

Prior art approaches to providing the additional information required comprise either moving the generating and sensing coils relative to each other, or scanning the axis of the generated field past the sensing coil.

An example of the first approach is taught in U.S. Pat. No. 3,644,825 wherein a system is disclosed for locating the position of a field sensor, comprising two orthogonal sensing coils, relative to a field generating element which relies on having knowledge of the direction of motion of the sensor relative to the generator. It should be noted that this system cannot detect the location of an object unless there is such relative motion, and its direction is known.

The second approach of scanning the axis of the generated field is disclosed, for position location in two dimensions, in U.S. Pat. No. 3,121,228 and for position location in three dimensions in U.S. Pat. No. 3,868,565.

U.S. Pat. No. 3,121,228 describes how the distance and direction of a sensor, again comprising two orthogonal sensing coils, relative to a field generator, also comprising two orthogonal coils, can be determined. The two orthogonal generating coils are driven in phase quadrature so that the axis of the resultant field is caused to rotate within a plane. If the sensor is located within this plane then the axis of the field is guaranteed to scan past the sensor, and, because at any given distance from a field generator the field strength will be a maximum at the field axis, the sensor will detect a maximum in field strength at this time. The voltage induced in any one of the two coils forming the sensor will be dependent on the orientation of the coil relative to the field generator, and it is for this reason that in '228 two orthogonal coils are utilised in the sensor. The sum of these two voltages gives an indication of the distance between the sensor and generator, while the phase difference between the two voltages gives an indication of the direction of the generator relative to the sensor. It is thus essential to the operation of the location system of '228 that the axis of the field rotates and that two coils are present in the sensor.

In U.S. Pat. No. 3,868,565 this approach of scanning the axis, or maximum intensity vector, of the field past the sensor is extended to allow location of the sensor in three dimensions. Whereas in two dimensions it is sufficient merely to rotate the axis of the field within the plane to be sensed to guarantee it passing through the sensor, in three dimensions the axis would have to be rotated so that it described the surface of a sphere in order to be certain it encountered the sensor. To ensure that the axis passed through all points on the surface of a sphere the motion of the axis would be such that it encountered the sensor only very infrequently, and thus measurements by the sensor of the maximum field strength would also be infrequent. To avoid this the location system of '565 drives the generator coils in a complex fashion so that the field axis tracks and rotates around the position of the sensor.

In order to locate the position of the sensor in three dimensions, according to the method of '565, three mutually orthogonal generating coils and three mutually orthogonal sensing coils are required and the three generating coils must be driven simultaneously by the three drive currents having amplitude and phase relationships between them which are controlled so as to direct the field axis towards the sensor.

The approach taken in '565 further requires that the various equations governing the voltage induced in a sensing coil located and orientated in a particular alternating magnetic field are solved dynamically in real time ie. during the acquisition of data from the sensing coil. This requirement, in addition to limiting the speed at which the sensor can move while still being located successfully by the system, also means that should it be desired to locate more than one sensor, all apparatus will need to be duplicated for each additional sensor.

U.S. Pat. No. 4,710,708 discloses a position location system, in which it is not necessary to scan the field axis. '708 employs multiple coil field generators and a single coil sensor, but utilises standard iterarive algorithms to solve for all the variables of the relevant simultaneous equations, in a computationally intensive manner.

SUMMARY OF THE INVENTION

According to a first aspect of the present invention there is provided a method of determining the location and the orientation of a field sensor relative to a plurality of field generators of known location, each field generator comprising a plurality of collocated field generating elements, the method comprising the steps of:

1) for each generator, energising each generating element and measuring the respective field generated by each generating element at the field sensor,

2) for each field generator calculating, from the measurements of the field generated by each of its generating elements, and an estimate of the orientation of the sensor an estimate of the distance from that particular field generator to the sensor,

3) utilising the estimate of the distances from each of the field generators to the sensor, and the known location of the field generators to calculate the location of the sensor relative to the field generators,

4) employing the estimated location of the sensor from step 3) and the measurements of the field at the sensor to calculate a new estimate of the orientation of the sensor, and

5) repeating steps 2) to 4)iteratively, with step 2) employing the new estimate of sensor orientation from the preceding step 4), to improve the estimates of location and orientation of the sensor.

The method of the first aspect of the present invention thus enables the location of a sensor to be determined without either relative motion between the sensor and the field generating element, or scanning of the axis of the field.

Furthermore, by calculating an estimate of the distance of the sensor from each field generator, a surprisingly accurate estimate of the position of the sensor is achieved in a computationally simple manner.

Since the method dissociates the stages of acquisition of data from the sensor, and processing of that data, rapid determination of the sensor location is facilitated. Furthermore the location of additional sensors may be determined simply by simultaneous measuring the field, generated by each generating element, at these other sensors and independently calculating their distances from the field generators. It should be noted that no modification of the field generating apparatus or method of driving the apparatus is required in order to determine the location of a plurality of sensors.

The applicants have discovered that advantageously the method of the first aspect of the present invention also allows the location of a sensor comprising a single sensing element, for example a sensing coil, to be determined, as will be explained subsequently. This is particularly advantageous for positioning applications in which two or more mutually orthogonal sensing coils, as required by prior art techniques, cannot be used.

According to a second aspect of the present invention there is provided a method of determining the location of a field sensor, comprising a plurality of collocated field sensing elements, relative to a field generator, comprising a plurality of collocated field generating elements, the method comprising the steps of:

1) energising a single field generating element to establish a field,

2) measuring a value of the field strength at the field sensor which is dependent on the location and orientation of the sensor within the field,

3) repeating steps 1) and 2) for each field generating element,

4) calculating, by utilising all the values measured in step 2 and an estimate of the direction of the sensor from the field generator, a direction dependent weighting factor for each field generating element so that the calculated field strength B is equal to the field strength B that would exist at the sensor if the axis of the field were directed towards the sensor,

5) iteratively altering the direction dependent weighting factors to maximise B and thus to determine to a desired level of accuracy the direction of the sensor from the field generator, and

6) employing the measured values of the field strength to calculate the distance of the sensor from the field generator and hence, from the direction of the sensor in step 5), the location of the sensor relative to the field generator.

This aspect of the invention thus provides a method of locating a sensor relative to a single field generator.

The invention further provides apparatus suitable for carrying out the methods of the first two aspects of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will now be described, by way of example only, with reference to the accompanying figures in which:

FIG. 1 shows a first embodiment of the invention,

FIG. 2 shows the cartesian coordinate system employed for a sensor of arbitrary orientation located at point P,

FIG. 3 shows schematically the resolution of the magnetic flux density at a sensor,

FIG. 4 shows the coordinate system employed to locate a sensor relative to a field generator,

FIG. 5 shows schematically a simulated circle of constant induced voltage, in a sensor, in two dimensions, which is employed in the first embodiment of the invention,

FIG. 6 shows schematically three simulated spheres of constant induced voltage each centred on a field generator, which is employed in the first embodiment of the invention,

FIG. 7 shows a flow chart of a first positioning algorithm used in the first embodiment of the invention,

FIG. 8 shows the same schematic as FIG. 6 when the location and orientation of the sensor have been determined,

FIGS. 9, 10 and 11 schematically show a coordinate system employed in a second positioning algorithm used in the first embodiment of the invention,

FIGS. 12(a) to 12(f) show images or an endoscope obtained using the positioning system of the present invention on the left, and images obtained conventionally using X-rays on the right, 12(a) and (b) show a sigmoid loop, 12(c) and (d) show an alpha loop, and 12(e) and (f) show a reverse alpha loop,

FIGS. 13(a) to 13(d) show images of an endoscope within a patient obtained using the present positioning system on the left, and obtained using conventional X-ray imaging on the right, 13(a) and (b) show an anterior view, and 13(c) and (d) show a lateral view,

FIG. 14 shows a second embodiment of the invention,

FIG. 15 is an illustration of a data glove having one or more sensor coils attached to fingers of the glove.

FIG. 16 depicts resolving magnetic flux density at a distance.

FIG. 17 depicts resolving magnetic flux density onto an x-y-z Cartesian coordinate system.

FIG. 18 depicts resolving the magnetic flux density at P onto the x-y plane.

In a first embodiment the invention enables a sensor comprising a singe sensing coil to be located in three dimensions relative to a plane defined by three field generators.

DETAILED DESCRIPTION OF THE DRAWINGS

With reference to FIG. 1, three field generators 1 are mounted at known locations on a plane surface 2. Each field generator 1 comprises three electrically separate coils of wire (generating coils) 3 wound about a cuboid wooden former 4, which is approximately 40 mm along one side. The three coils of each field generator are wound so that the axes of the coils are mutually perpendicular. The nine generating coils are separately electrically connected to an amplifier 5 which is able, under the direction of a controller 6, to drive each of the coils individually. Each coil comprises 40 turns of 0.45 mm copper wire and has an inductance of approximately 75 μH.

The sensor 7 comprises a single sensing coil of 200 turns of 42 swg wire on a ferrite core of diameter 0.8 mm, and length 12 mm. Larger sensor coils will in general be more sensitive to the electro-magnetic fields generated by the generating coils, however the size of the coil is normally governed by the particular position location problem which is being addressed and frequently small sensor coils will be required. For an air-cored coil the sensitivity of the sensor depends on the area of the coil, however the sensitivity can be increased by utilising a high magnetic permeability material in the core, and in this case the sensitivity will depend more strongly on the length of the coil than on its diameter. The sensing coil is electrically connected to a measurement unit 8 which in turn is connected to the controller 6. The measurement unit 8 comprises an analogue to digital converter, and a matched filter (not shown).

In use, the controller 6 directs the amplifier 5 to drive each of the nine generating coils 3 sequentially. The amplifier 5 outputs a 10 kHz drive signal of 3 amps rms which causes the particular generating coil being driven to generate a quasi-static magnetic field. The frequency of the drive signal is chosen so that, within the range over which the location of the sensor is to be determined, the field generated is a near-field electro-magnetic field i.e the wavelength is long compared to the distance from the generating coil to the sensing coil.

Furthermore the drive signal frequency must be chosen so as to provide a compromise between sensor coil sensitivity, and the detrimental effects of electro-magnetic noise due to induced eddy currents within electrically conductive objects within the positioning range, since both of these aspects increase with frequency. In the absence of electrically conducting objects a frequency of several hundred kilohertz may be used giving good sensor sensitivity and thus good range and positioning accuracy. In the presence of highly conductive objects, this frequency may need to be reduced to a few hertz. In this case a sensor coil may no longer be appropriate and may be replaced by an alternative magnetic field sensor, such as a flux gate magnetometer. In this embodiment a drive frequency of 10 kHz has been found to be a suitable compromise between sensitivity and immunity to interference from electrically conductive objects.

Once the quasi-static field from a particular generating coil 3 is established, the value of the voltage induced in the sensing coil 7 by this field is measured by the measurement unit 8. The signal from the sensing coil 7 first amplified and then sampled at 40 kHz by a 16 bit analogue-to-digital converter. The sampled signal is windowed using a Blackman-Harris window, the 10 kHz component is extracted by the matched filter and hence a value representing the voltage induced in the sensing coil 7 is established. This value is passed to the controller 6 which stores the value and then instructs the amplifier 5 to stop driving the present generating coil 3 and to start driving the next generating coil 3. When all nine generating coils 3 have been driven, or energised, and the corresponding nine voltages induced in the sensing coil 7 have been measured and stored, the controller 6 calculates the location and orientation of the sensor 7 relative to the field generators 1 and displays this on a display device 9. This calculation can be carried out while the subsequent set of nine measurements are being taken. Thus, by sequentially driving each of nine generating coils 3, arranged in three groups of three mutually orthogonal coils, the location and orientation of a single sensing coil 7 can be determined.

In order to describe the algorithm employed by the controller 6 to calculate the location and orientation of the sensor 7, a coordinate system will first be defined. In FIG. 2 is shown a sensor, located at position P, whose axis is orientated alone direction S. In general in order to determine the location and orientation of a single sensing coil within a field the x, y, z cartesian coordinates of the sensor and the elevation angle θ, and rotational angle φ, must be found (see FIG. 2). The vector distance R of the sensor from the origin, O, or the coordinate system is also shown in FIG. 2. Both the location and orientation of the sensing coil within the field will affect the voltage induced in the coil by the field, but rotation of the coil about its axis will not affect the induced voltage and thus does not constitute a further unknown quantity.

Assuming now that a single field generating coil 3 is placed at the origin O of the coordinate system with its axis directed along the z-axis. When the generating coil is energised a field will be produced at the sensor location P which has a magnetic flux density B. With reference to FIG. 3 this magnetic flux B can be resolved along the three axes of the coordinate system to give Bx, By and Bz and subsequently resolved along the axis of the sensor thus:

B _(xy) =B _(x) cos Φ+B _(y) sin φA  (1)

and

B _(s) =B _(z) cos θ+B _(xy) sin θ  (2)

The voltage V_(s), induced in the sensor is related to the flux density via V_(s)=k_(s)B_(s) where k_(s) is known and is a function of the frequency of the field and the characteristics of the sensing coil. It therefore follows from (1) and (2) that the voltage induced in the sensor at any x-y-z location and for any θ-φ orientation is given by,

V _(s) =k _(s)(B _(z) cos θ+sin θ(B _(x) cos φ+B _(y) sin φ))  (3)

Formulae defining B_(x), B_(y) and B_(z) are developed from standard near field electromagnetic theory in Appendix-A. Upon substituting the terms for B_(x), B_(y), B_(z) from equations (A-12) to (A-14) into (3), it can be shown that, $\begin{matrix} {V_{s} = {k_{2}{k_{s}\left\lbrack \frac{{\left( {{2\quad z^{2}} - x^{2} - y^{2}} \right)\cos \quad \theta} + {3\quad z\quad \sin \quad {\theta \left( {{x\quad \cos \quad \varphi} + {v\quad \sin \quad \varphi}} \right)}}}{\left( {x^{2} + y^{2} + z^{2}} \right)^{5/2}} \right\rbrack}}} & (4) \end{matrix}$

where k_(s) is known and is a function of the current through, diameter of, and number of turns on the generating coil. The five unknown quantities, x, y, z, θ and φ are evident in (4): all other variables are known.

Equation (4) has been derived, as stated above, for the case of a single generating coil 3 directed along the z-axis, there will of course be a corresponding equation for each of the three generating coils 3 of each of the three field generators 1.

It has been found that despite the complexity of this term (4) it is possible to determine the location and orientation of a single sensing coil by sequentially energising each generating coil. To explain this approach to position location the two dimensional case will first be considered.

FIG. 4 shows a field generator comprising two orthogonal field generating coils D_(x) and D_(y) located at the origin of the coordinate system. The single sensing coil sensor is located at P and its axis is parallel to direction S. The angle α is the angle between vector direction R of the sensor from the origin, and the direction S of the sensor axis.

The voltages induced in the sensor when coils D_(x) and D_(y) are energised sequentially are respectively,

V _(sDx) =k _(s)(B _(RDX) cos α−B _(θDx) sin α)  (5)

and

V _(sDy) =k _(s)(B _(RDy) cos α+B _(θDy) sin α)  (6)

where the D_(x) and D_(y) sub-suffices relate to the field generated by the D_(x) and D_(y) coils. Upon substituting (A-1) and (A-2) from Appendix-A, (5) and (6) become, $\begin{matrix} {V_{s\quad 0\quad x} = {\frac{K_{c}k_{s}}{R^{3}}\quad \left( {{2\cos \quad {\theta cos\alpha}} - {\sin \quad {\theta sin\alpha}}} \right)}} & (7) \end{matrix}$

 (2 cos θ cos α−sin θ sin α)  (7)

and

$\begin{matrix} {V_{s\quad 0\quad \overset{\_}{y}} = {\frac{k_{c}k_{s}}{R^{3}}\quad \left( {{2\sin \quad {\theta cos\alpha}} + {\cos \quad {\theta sin\alpha}}} \right)}} & (8) \end{matrix}$

 (2 sin θ cos α+cos θ sin α)  (8)

It has been noticed that the value of {square root over (V_(sDx) ²+V_(sDy) ²)} remains constant for a constant value of α.

From (7) and (8) we can write, $\begin{matrix} {\sqrt{V_{s\quad 0\quad x} - V_{s\quad 0\quad y}^{2}} = {\frac{k_{c}k_{s}}{R^{3}}\begin{bmatrix} {{4\quad \cos^{1}\quad \theta \quad \cos^{2}\quad \alpha} + {\sin^{2}\quad \theta \quad \sin^{2}\quad \alpha} -} \\ {{4\quad \sin \quad \theta \quad \sin \quad \alpha \quad \cos \quad \theta \quad \cos \quad \alpha} +} \\ {{4\quad \sin^{2}\quad \theta \quad \cos^{2}\quad \alpha} + {\cos^{2}\quad \theta \quad \sin^{2}\quad \alpha} +} \\ {4\quad \sin \quad \theta \quad \cos \quad \alpha \quad \cos \quad \theta \quad \sin \quad \alpha} \end{bmatrix}}} & (9) \end{matrix}$

which reduces to, $\begin{matrix} {\sqrt{V_{s\quad 0\quad x}^{2} + V_{s\quad 0\quad y}^{2}} = {\frac{k_{c}k_{s}}{R^{3}}\sqrt{1 + {3\quad \cos^{2}\alpha}}}} & (10) \end{matrix}$

This can be thought or as corresponding physically to a circle of constant induced voltage in the sensor, centred on the field generator at the origin and lying in the x-y plane. This concept is shown schematically in FIG. 5. If the two individual measurements of induced voltage V_(sDx) and V_(sDy) measured at the sensor are used to calculate $\sqrt{V_{s\quad 0\quad x}^{2} + V_{s\quad 0\quad y}^{2}}$

a circular or rotating field of constant strength can be simulated since $\sqrt{V_{s\quad 0\quad x}^{4} + V_{s\quad 0\quad y}^{4}}$

represents the maximum voltage that could be induced in the sensor if a rotating field were used. This is desirable since equation 10 gives a very simple relationship between R and α.

The extension of this analysis to three dimensions is readily performed mathematically and conceptually very powerful because the approach taken does not require the axis of the generated field to be steered towards the sensor, but simply requires sequential energising of the individual generating coils. Thus for position determination in three dimensions of a single coil sensor, assuming three mutually perpendicular generating coils located at the origin of the coordinate system, we have $\begin{matrix} {\sqrt{V_{s\quad 0\quad x}^{2} + V_{s\quad 0\quad y}^{2} + V_{s\quad 0\quad z}^{2}} = {\frac{k_{c}k_{s}}{R^{3}}\sqrt{1 + {3\quad \cos^{2}\alpha}}}} & (11) \end{matrix}$

It should be noted that the term {square root over (1+3 cos²α)} can only take values between 1 and 2, ignoring negative solutions and thus any value of R computed from (11) is only weakly dependent on the value of α. For example, if α is assumed to be π/2 whereas its correct value is zero, the value of R computed from (11) is 80% of its correct value. This in fact represents the worst case scenario since α=0 means {square root over (1+3 cos²α)}=2, while α=π/2 means {square root over (1−3 cos²α)}=1.

Hence for each of three field generators a bounded value for R, the vector distance of the sensor from that particular field generator, can be calculated without any knowledge of the orientation α of the sensor. Since there are three field generators located at different known positions in the same plane (the x-y plane) and the distance R from each of them to the sensor has been calculated, the x-y-z coordinates of the sensor can be determined from simple trigonometry. This positioning methodology is shown schematically in FIG. 6. The three simulated spheres of constant induced voltage centred on each of the three field generators, and bounded by the potential error in R, overlap at two regions. One region is above the plane of the field generators and the other is below. In most applications, one solution is clearly erroneous and the location of the sensor can easily be uniquely determined.

At this stage the location of the sensor (but not its orientation) has been calculated to a limited degree of accuracy. For some applications this may be adequate, but in general the precise location and probably orientation of the sensor are required. This is achieved by the use of an iterative procedure in which the estimate of the x-y-z coordinates of the sensor, derived from the values of R for each of the three field generators, are used in the appropriate equation (4) for each of the nine generating coils to estimate values of θ and φ or the sensor, from these α is calculated for each of the three generators. Although θ and φ could be calculated from only two versions of equation (4), all nine versions are employed to improve the rate of convergence of the solution and its immunity from noise. The three values of α can then be invoked in the appropriate equation (11) for each field generator to calculate an improved estimate for R for each of the generators. This process is repeated, progressively reducing the error in R and α for each generator until the desired level of accuracy is achieved. It should be noted that this technique avoids the problems of non-convergence which would arise if equation (4) were utilised directly because a good estimate for R has seen found before equation (4) is employed, and the estimate for R is bounded as shown schematically in FIG. 6.

In summary and with reference to FIG. 7, the algorithm utilised by the controller 6 is as follows:

1. Assume α=0 initially. This ensures an over-estimate of R which guarantees an intersection of the radial distances from the three generator.

2. Measure the voltages induced in the sensor by each of the 9 individual generator coils, and then compute {square root over (V_(sDx) ²+V_(sDy) ²+V_(sDz) ²)} for each of the three generators.

3. Invoke α in (11) and compute R for each of the three generators.

4. Compute the x-y-z coordinates of the sensor from the three values of R.

5. Invoke these coordinates in the appropriate version of equation (4) for each of the nine generating coils and compute an improved estimate of θ and φ. This can be achieved by the use of, for example, the Gauss-Newton Least Squares optimisation technique.

6. Use the improved estimates of θ and φ to calculate α for each generator.

7. Return to step 3 until the difference between the new and previous estimates of a reaches a sufficiently low value commensurate with the required positional accuracy in the x-y-z coordinates being achieved.

FIG. 8 depicts schematically the three spheres of constant induced voltage when the errors in R have been reduced to allow the location of the sensor to be determined uniquely. The technique employed thus guarantees convergence to a unique location, with a precision that can be chosen in accordance with the requirements of the application. Indeed, it should be noted that in applications where the sensor is moving within the magnetic field, the number of iterations can be chosen dynamically for each calculation of the location of the sensor, thereby improving the efficiency of the process. For example, the first placement of the sensor typically requires 10 iterations before the solution is considered to have converged: this is considered to be so when the mean-square difference between the present and previous values of α is less than 10⁻⁶. Even with rapid movements of the sensor, it is unlikely that its angle α will change markedly from one positional placement to the next. By using the final value of α arrived at during the first placement as the initial estimate in the second placement, the number of iterations required to achieve the same convergence is significantly reduced. And so on for all subsequent placements. Experiments have shown that as few as 3-5 iterations are required for convergence after the initial placement.

Although the algorithm described above with reference to FIG. 7 ensures convergence to a unique location, allows both the location and orientation of a single coil sensor to be determined, and has proved to be robust even in the presence of noisy signals from the sensor coil 7, a second, alternative algorithm has been developed which has further advantages.

The first algorithm requires, at step 5, the solution of nine simultaneous equations relating θ and φ for each of the field generators to the estimate of the x, y and z coordinates of the sensor. This calculation can, dependent on the processing power of the controller 6, be time consuming, hence a second algorithm which is less computationally intensive has been developed. This algorithm enables the location and orientation of the sensor 7 to be determined more rapidly. The second algorithm is based on the realisation that mathematically the voltages induced in the sensor 7 by each set of three generating coils 3 comprising each generator can be treated as vector quantities. This mathematical treatment enables an angle ψ between the magnetic field lines and the direction vector of the sensor from a generator to be calculated. Once the values of ψ for each generator have been found there is no need to employ equation (4) since the values of α can be calculated directly from the values of ψ given a knowledge of the form of the magnetic field. Since nine versions of equation (4) need no longer be solved this algorithm is computationally less intensive than the algorithm of FIG. 7.

The second algorithm will now be described in greater detail. In order to explain the algorithm clearly and to demonstrate the mathematical insight on which it is based, the roles of the generating coils 3 and sensor coil 7 will be reversed i.e. for the purpose of the calculation the single axis field sensor 7 will be replaced by a continuously energised single axis field generating coil and the three orthogonal three-axis field generators will be replaced by three orthogonal three-axis field sensors. This is shown in FIG. 9. Although it should be stressed that the reversal of roles here is simply for the purpose of mathematical elegance, his reversed configuration will in practice be feasible and in some position location applications may be desirable.

Referring now to FIG. 9, let the vectors joining each three-axis sensor (10) to the single axis generator (11) be R ₁, R ₂ and R ₃ and let the angles between these vectors and the generator be α₁, α₂ and α₃. The field produced by the single axis generator (11) will pass through each three-axis sensor (10), and the magnitude and direction of the field may be determined by processing the signals produced by each of the three orthogonal sensor coils (12), forming each three-axis sensor (10), in response to the field. Let the signals in each of the three-axis sensor (10) be represented by the vector quantities V ₁, V ₂ and V ₃, where each component of the vectors corresponds to the signal in each of the orthogonal sensing coils (12). Let the angle between the field at each three-axis sensor (10) and the vectors R ₁, R ₂ and R ₃ be ψ₁, ψ₂ and ψ₃ respectively, as shown in FIG. 10.

For the first estimate of the position of the generator 11, the orientation of the generator (11) is unknown, and α₁, α₂ and α₃ are assumed to be zero. The magnitude of the vectors R ₁, and R ₂ and R ₃ are then calculated from equation (11). As for the first algorithm, because of the nature of equation (11) a bounded value for the distance of the generator (11) from each of the three-axis sensors (10) is found and the overlap of these bounded values can be used to give an initial estimate of the x, y and z components of each of the vectors R ₁, R ₂ and R ₃.

The angles ψ₁, ψ₂ and ψ₃ are then calculated using the dot product, as follows:

V _(n) .R_(n) =| V _(n) ||R_(n) | cos ψ _(n) ${\cos \quad {\underset{\_}{\psi}}_{n}} = \frac{\underset{\_}{V_{n}} + \underset{\_}{R_{n}}}{{\underset{\_}{V_{n}}}{\underset{\_}{R_{n}}}}$

Having found ψ_(n), we need to find α_(n) to improve the estimate of position. Referring to FIG. 11 ψ is the known angle and α is the required angle. d represents the calculated distance from the generator to the sensor.

Since the generator is a simple dipole, the field at the sensor is given from equations (A-1) and (A-2) of the Appendix by: $B_{2} = {\left( \frac{2\quad k}{^{3}} \right)\cos \quad \alpha}$ $B_{6} = {\left( \frac{k}{^{3}} \right)\sin \quad \alpha}$

The angle of the field at the sensor is given by: ${\tan \quad \psi} = {\frac{- B_{c}}{B_{d}} = {{- \frac{1}{2}}\quad \tan \quad \alpha}}$

and so α is obtained from ψ using:

tan α=−2 tan ψ,

Having found a new estimate for α_(n), a new estimate of the generator position is calculated using equation (11). The process is repeated until the position converges to the required degree of accuracy.

Once the position of the generator (11) has been determined in terms of R ₁ and α_(n) the orientation of the generator may be calculated in terms of θ and φ as follows.

Let U be a unit vector defining the orientation of the generator relative to the sensors. Using the dot product, we can set up three equations to determine the three unknowns in U.

R₁ . U=|R ₁ ||U |cos α₁ =|R₁ |cos α ₁

R₁ . U=|R ₂ ||U |cos α₂ =|R₂ |cos α ₂

R₃ . U=|R ₃ ||U |cos α₃ =|R₃ |cos α ₃

These linear equations are solved to find U, and then the orientation in terms of θ and φ is given by: $\theta = {\arctan \quad \left( \frac{\sqrt{U_{x}^{2} + U_{y}^{2}}}{U_{z}} \right)}$ $\varphi = {\arctan \quad \left( \frac{U_{x}}{U_{y}} \right)}$

(note that a four quadrant arc tan function should be used).

Although the formulation of the second algorithm has thus far been for the case of a single axis generator and multiple axis sensors the algorithm can be applied to the case of a single axis sensor and multiple axis generators. The only modification required between the two cases is the method by which the raw data for the algorithm (i.e. the voltages induced) is acquired. The equations developed above are directly applicable to the single axis sensor multiple axis generator case since the magnetic coupling between two coils is the same irrespective of which of the two coils is being driven.

The steps to be followed when employing the algorithm for the single axis sensor and multiple axis generator case will now be summarised:

1. Sequentially energise each of the three generator coils in each of the three generators 1 and measure the voltage induced in the sensor coil 7 by each generator coil i.e. measure V_(1x), V_(1y), V_(1z), V_(2x), V_(2y), V_(2z), V_(3x), V_(3y), V_(3z).

2. Invoke α_(n) in equation (11) and compute |R_(n)| for each of the generator 1, 2 and 3. (for initial estimate set α=0).

3. From the intersection of three spheres of radius |R_(n)| calculate the vector quantities R ₁, R ₂ and R ₃.

4. Taking the three voltages induced in the sensor coil 7 by a single generator 1 as a vector quantity e.g.

V ₁ =V _(1x) x+V _(1y) v+V _(1z) z

 calculate the angle of the field ψ_(n) from the dot product V _(n).R _(n).

5. Calculate the angles α_(n) between the vectors R _(n) and the sensor axis from ψ_(n) and equations A-1 and A-2.

6. Repeat steps 2 to 5 until the desired level of positioning accuracy has been achieved.

7. Use final values of α_(n) and R _(n) to calculate the orientation of the sensor coil in terms of θ and φ.

It has been found that use of the second algorithm can improve the speed with which the location and orientation of a sensor is determined by a factor of approximately 15 compared to the first algorithm.

For both algorithms the location and orientation of more than one sensor can be determined without the need to replicate the field generators 1 and amplifier 5. The field generated by any one field generating coil is measured at each of the sensors and the location and orientation of the sensors are simultaneous and independently calculated. The positions of the sensors may of course all be displayed on a single display unit 9.

The simple, small sensor used in this embodiment means that it can provide position location in many situations where there is insufficient space for the three coil orthogonal sensor used in prior art position location systems. A particular field of application is the medical field, where access through body vessels is required, for example in endoscopy or non-invasive cardiovascular heart surgery. In these medical situations the present location system may replace the use of x-ray imaging (fluoroscopy), giving considerable advantages in cost and eliminating x-ray exposure to both patients and medical staff. The low frequency magnetic fields used by the present system render the human body transparent, while the use of low field strengths ensues the system is intrinsically safe.

During endoscopy it is desirable to know the path of the endoscope through the body. This may be achieved using the present location system in three ways. Firstly, the single sensing coil may be pulled along the biopsy tube and its position at regular intervals along the tube stored and displayed to provide a 3D map of the path. Secondly, a tube containing approximately a dozen single coil sensors may be placed in the biopsy tube of the endoscope and the location of each of the sensors determined. This would be a retro-fit to existing endoscodes. Alternatively, the single coil sensors may be placed in the wall of the endoscope during manufacture. In the second two cases a real time picture of the path of the endoscope would be available at all times to the endoscopist.

The present positioning system has been utilised in clinic field trials to image in three dimensions the total configuration of a colonoscope within the human abdomen. A sensor according to the present invention was placed inside the biopsy channel of an endoscope.

The small inner diameter of the biopsy channel, typically 3.7 mm for a colonoscope, not only dictates that the sensor be of vanishingly small diameter, but also that it may only comprise a single coil, typically 1 cm in length, orientated along the axis of the instrument. The algorithms of the present positioning system processes the signals from this sensor in such a way as to calculate the position of the sensor within the biopsy channel independent of its orientation. Such independence is crucial in colonoscopy since the sensor may adopt any orientation for a single x-y-z location.

The positioning algorithm resides as software within an IBM 486 personal computer which, upon processing the information taken from the sensor at numerous discrete positions along the biopsy channel, then displays the path followed by the sensor as a continuous line on the monitor. Clearly this path corresponds precisely to that of the endoscope. Moreover, because the information from the sensor at each location relates to three dimensions, the imaged path on the monitor is likewise displayed in three dimensions. Visually the system achieves this by the use of “grey scale” colour coding whereby portions of the path further from the viewer (i.e. down into the screen) appear in darker shades of grey than the “under” portion. This feature is unique among all conventional imaging techniques for colonoscopy and represents a major advance in the field.

To display the path of the endoscope, the endoscopist first passes the sensor down the biopsy channel until it reaches the tip of the endoscope. For convenience we have encapsulated the sensor within a hollow tubular catheter of the type used routinely with endoscopes. The catheter is then withdrawn at a uniform speed (although this is not critical) while the system repeatedly determines the position of the sensor at discrete instances during its motion. During withdrawal the path of the instrument is displayed on the monitor in three dimensions. In many situations a total image of the endoscope is not required, in which case the sensor need only be withdrawn along that portion of the instrument of interest. To cater for patients lying in a variety of positions, perhaps changing during the investigation, the image may be rotated in any direction. This is particularly advantageous in establishing the radius of curvature of any bend in the endoscope that happens to lie along the viewing axis. For example, a bend that is in fact gradual, and hence poses no concern, can appear abrupt if viewed from some directions. A useful zoom facility on the image is also provided. When the system is in normal use, the system display would ideally be sited next to a standard camera monitor used to display the view from the endoscope. In this way the endoscopist is conveniently presented with the path of the instrument in three dimensions on one display, and the internal view from the endoscope optics on the other.

Initial validation of the system was performed with the aid of a rigid plastic framework to hold the endoscope in one of a number of predefined configurations. X-ray imaging and the present magnetic field system were applied to seven different configurations of the endoscope. These included a sigmoid loop, an alpha loop, a reverse alpha loop, a gamma loop, and an “N” loop. The results, three of which can be seen in FIG. 12 showed close agreement between the image produced by the present positioning system (shown on the left) and the X-ray image (shown on the right) in each case. The nature of the overlapping portions of the colonoscope can be clearly seen from the images produced by the present positioning system. Some distortion of the images was caused by the metallic construction of the colonoscope perturbing the magnetic fields. However, this was minimal and the colonoscope configuration is clearly evident from the images.

The clinical trails involved three patients undergoing colonoscopy for a number of different indications. Ethical approval was obtained, as was written consent. The patients were sedated with a combination of pethidine and midazolam before the examination. The colonoscope used was a Pentax type FC38LH.

For the majority of each examination, the sensor was fully inserted into the biopsy channel, and the display was configured to show the progress of the tip of the endoscope in real time. When progress became difficult, the sensor was withdrawn, which immediately produced an image on the screen of the total path of the endoscope. With the aid of this image the removal of loops was straightforward, by using clockwise or anti-clockwise twist and simultaneous withdrawal of the endoscope. Similarly, when re-inserting the instrument the reformation of loops was prevented by a combination of abdominal pressure and torque. Where abdominal pressure was required the sensor was positioned in the loop, so enabling the endoscopist to see, by referring to the displayed image, whether pressure was being applied in the desired direction and to the correct extent. In each case examination around to the caecum was achieved (i.e. total colonoscopy) and the procedure was tolerated well by the patients. During the examinations, X-ray pictures were taken for comparison against those obtained with the magnetic system. Two of these, a plan and side view, are shown in FIG. 13 together with the corresponding image from the magnetic system. Agreement between the two is very close, the deviation being largely attributable to patient movement between the two exposures.

The system has been shown to image the configuration of the endoscope within the patients's abdomen with close agreement to the X-ray image. The three dimensionality of the image has proven to be of great help in deciding the strategy for removing loops which form in the path of the endoscope during intubation. Indeed, this improvement in visualisation is likely to be of great benefit in teaching colonoscopy, as well as enabling experienced endoscopists to improve their technique when facing difficult cases. The intrinsically safe nature or the system allows it to be in continuous use throughout the examination, presenting the endoscopist with as many images as the circumstances require. This contrasts markedly with fluoroscopy which can only offer images intermittently and carries an exposure time limit for reasons of patient safety, and X-ray pictures which are essentially only a “one-shot” option. Moreover, protective clothing need not be worn by any of those present at the examination while the system is in use, nor is it necessary for the examination room to be in any way specially prepared. Indeed, the system frees such examinations from having to take place in a room apart from the ward. If need be such examinations could be carried out in complete safety and with no loss in overall integrity, at the patient's own bed in the ward.

A number of medical studies have considered the efficacy of colonoscopy as a screening methodology in asymptomatic subjects and have shown a significant detection rate for adenomas and carcinoma in subjects over the age of 60. Of particular note here is that some 50% of lesions were proximal to the splenic flexure, hence the importance of performing a total colonoscopy in such cases. The ability to conduct total colonoscopes routinely and efficiently is therefore an important objective. On the other hand it must be remembered that colonoscopy (total or otherwise) is associated with a certain morbidity and mortality due to the need to apply mechanical stress during intubation or withdrawal. The overall improvement in visualisation that the present system affords, particularly it's three dimensionality, should both raise the efficacy of total colonoscopy and reduce the risk of perforation. This in turn may also help to reduce the dosage of analgesic and sedative drugs required.

Although the application of the present positioning system to colonoscopy has been specifically addressed, the scope of the medical applications extends far beyond this by virtue of the very small size of the sensor(s). For example, bronchoscopy, gastroscopy and procedures involving a nasogastric or endotracheal tube could all utilise the sensor described herein its present catheter form. Numerous other medical applications requiring position or orientation information could benefit from either a single or multiple sensor implementation of the system.

Data gloves which facilitate the location of a wearer's hands, are used in both medical and virtual reality applications. They enable the position and direction of each of the fingers to be determined. The prior art magnetic field location system using a three coil orthogonal sensor is clearly not applicable, so current data gloves use fibre optic strain gauges. These require calibration every 2-3 minutes. The ability to locate single coil sensors means that the sensors may be wound around each joint of each finger giving a system which is less bulky, more accurate and only requires calibration during the manufacture of the gloves. FIG. 15 illustrates an exemplary data glove with sensor coils wound around each finger.

A particular area of application for the present positioning system comprises that of the so called “man-machine interface”. There are numerous situations in which a human operator needs to interact with a machine, or computer, normally comprising some form of display device, examples of such interactions are with a conventional personal computer, a video conferencing system, or a virtual reality environment in which the operators field of view is filled by the display device, which in this case may be three dimensional. The present positioning system allows an operator to wear small, single coil sensors about his body to enable his movements to be detected and interpreted by a machine without the need for physical contact between the operator and the machine. For example the positioning system of the present invention could enable an operator to interact with images on a television or computer screen without the use of a conventional keyboard, mouse or stylus. The operator could wear single coil sensors on his fingertips, for example in thimbles, or a thin glove, the location and orientation of which could be detected within a magnetic field generated within the vicinity of the display screen. Linking the positioning system to the computing system would allow the computing system to have knowledge of the position of the operators fingertips in three dimensions. A computer drawn replica of the user's hand which precisely emulates the movements of the user's own fingers, could then be utilised by the user to interact with the computer system. Thus when the user makes hand movements the virtual hand on the screen can be made to grasp and manipulate objects in the display, for example moving portions of text, rotating an engineering drawing, selecting an icon to activate a software program, etc. The virtual hand could also be used to control windows and menus and to draw diagrams. The advantage of such a man machine interface is that its use is completely intuitive, requiring no training.

Since the positioning system of the present invention enables the position of a sensor to be located in three dimensions, the extension of such a man machine interface to a three dimensional virtual reality environment is clearly possible. In this case the computer system involved may need information regarding the position of other parts of the operator's body than his hands, for example the image displayed to the operator may be dependent on the location and orientation of his head, in which case small single coil sensors can clearly be worn for example on each temple.

In a second embodiment the invention enables a sensor, comprising three orthogonal sensing coils, to be located in three dimensions relative to a single field generator comprising three orthogonal generating coils.

With reference to FIG. 14, a field generator 1, comprising three generating coils 3, as previously described is mounted on a surface 2. Each generating coil is electrically connected to an amplifier 5 and is driven as previously described.

The sensor 7 in this embodiment comprises three mutually orthogonal sensing coils, A, B and C, each of which is separately electrically connected to a measurement unit 8.

In use the three generating coils are sequentially energised as previously described, but when each coil is energised the voltages induced in each of the three sensing coils V_(A), V_(B) and V_(C) are measured by the measurement unit 8 and stored by the controller 6. The controller 6 then calculates from these three voltages the location of the sensor 7 relative to the single field generator 1.

The controller is able to calculate the location of the sensor, even though the axes of the generated fields have not been directed towards the sensor, by employing an algorithm which weights the voltages induced in the three sensing coils by a direction dependent weighting, and then alters these weightings to achieve a calculated maximum field strength at the sensor. In order to more fully describe this algorithm the field from a single small coil is first considered.

The magnetic field produced by a small coil, from equations (A-1) and (A-2), is given by: $\begin{matrix} {\underset{\_}{B} = {\left( \frac{k}{R^{3}} \right)\left( {{2\quad \underset{\_}{a}},{{\cos \quad \theta} + {{\underset{\_}{a}}_{\theta}\quad \sin \quad \theta}}} \right)}} & (12) \end{matrix}$

where

R=distance from the coil

θ=angle from the axis of the coil

k=constant for coil (size, drive current, no. turns etc).

a _(R) is a unit vector in the direction of B_(R) (see Appendix A—FIG. A-1)

a _(θ) is a unit vector in the direction of B_(θ) (see Appendix A—FIG. A-1)

Now, the magnitude of the magnetic field $\begin{matrix} {|B| = {\frac{k}{R^{3}}\sqrt{{3\cos^{2}\theta} + 1}}} & (13) \end{matrix}$

and so it can be seen that for a given distance from the coil, the field strength is greatest when θ=0 i.e. on the axis of the coil. Clearly, if the effective axis of the coil could be directed towards the sensor, the sensor would experience a maximum in field strength.

In order to steer the effective axis of the coil without physically moving it, additional coils are required. To steer the effective axis over 3D, three coils are required in total. Assuming three mutually perpendicular coils D_(x), D_(y), D_(z) lying along each of the cartesian axes x, y and z, each coil being centred on the origin, by setting the currents to each coil as:

I _(x) =I cos θ cos φ

I _(y) =I cos θ sin φ

I _(z) =I sin θ

the effective axis of the resulting field may be steered without changing the magnitude of the field. φ is the angle anticlockwise from x in the xy plane, and θ is the elevation towards the z axis.

Assuming the notation of FIG. 2, OP represents the effective axis of the field. That is a single drive coil, centered on the origin, with its axis along OP, fed with current I, would create the same field as the three coil arrangement with the currents I_(x), I_(y) and I_(z) as described.

Thus if the field strength at the point we wished to locate could be measured, we would find that when axis OP pointed at this point, the field strength would be a maximum.

The field strength is measured using 3 orthogonal sense coils, centred on a single point. In this case an AC field must be used in the drive coils. Let the sensor coils be A, B and C, and let the amplitude of the voltages induced be V_(A), V_(B) and V_(C). The field strength can be computed from

B=k _(s)(V _(A) ² +V _(B) ² +V _(C) ²)

where k_(s)=a constant for the sensor and frequency used.

The effective axis of the resulting field, could be physically steered towards the sensor, and V_(A), V_(B), V_(C) monitored to maximise B. However this is difficult in practice to achieve since both θ and φ would need to be simultaneously altered while measurements from the sensor are taken. This leads to slow position location, and limits the system to locating a single sensor. The approach adopted in this embodiment is as follows. The drive currents for all the coils are set to I, and not to the values which would be required to physically steer the effective field axis, as discussed above. i.e.

I _(x) =I

I _(y) =I

I _(z) =I

Effectively steering of the field axis is carried out AFTER the field measurements have been made by weighting or scaling these measurements by direction dependent weighting factors. Thus, instead of physically altering θ, φ and then measuring B, the following technique is used.

1. Switch on D_(x), with I_(x)=I

2. Measure V_(ADx), V_(BDx), V_(CDz)

3. Switch off D_(x); Switch on D_(y), with I_(y)=I

4. Measure V_(ADy), V_(BDy), V_(CDy)

5. Switch off D_(y); Switch on D_(z), with I_(z)=I

6. Measure V_(ADz), V_(BDz), V_(CDz)

7. Switch off D_(y)

For the physically steered field: I_(x)=I cos θ cos φ, rather than I. The same result is achieved by weighting the results from step 3 by cos θ cos φ. The same logic applies to the remaining results, using the relevant weighting factor.

Thus:

B ² =K _(s) ²((V _(ADx) cos φ+V _(ADy) sin φ)cos θ+V _(ADz) sin θ)²+((V _(BDz) cos φ+V _(BDy) sin φ)cos θ+V _(BDz) sin θ)²+((V _(CDx) cos φ+V _(CDy) sin φ)cos θ+V _(CDz) sin θ)²

Note that the “signs” of the amplitude are important

phase shift=0=+ve

phase shift=π=−ve

In this expression for B², θ and φ are the only variables.

In order to find the values of θ and φ which give the maximum B², the Gauss-Newton optimisation technique is used. This copes well with sum of squares type expressions. The expression for B² is well behaved, and only a few iterations are required.

In order to find the precise location of the sensor we must now find R.

If we square and sum the field magnitudes at the sensor for each generator coil we find that: ${{B_{0x}}^{2} + {B_{0y}}^{2} + {B_{0z}}^{2}} = {6\left( \frac{k}{R^{3}} \right)^{2}}$

and so R may be found from: $R^{3} = {k_{c}\sqrt{\frac{6}{{B_{0x}}^{2} + {B_{0y}}^{2} + {B_{0z}}^{2}}}}$

The cartesian coordinates of the sensor are then

x=R cos θ cos φ

y=R cos θ sin φ

z=R sin θ

As with the first embodiment the location of multiple sensors is facilitated because the generating coils are only energised sequentially allowing the generated field to be simultaneous measured at any number of locations.

Although in both embodiments of the invention described herein the voltages induced in the sensor coil 7 by the generating coils 3 are distinguished one from the other by employing a time multiplexing approach, i.e. the generating coils are energised sequentially, a frequency multiplexing approach may also be adopted within the scope of the present invention. For example in such an approach each generator coil 3 could be driven at a different frequency so that a plurality of generating coils 3 could be simultaneously energised while still allowing the voltage induced in the sensor 7 by each generating coil to be distinguished by its frequency. In such an arrangement the sensor would need to be responsive to all the energising frequencies and some from of frequency filtering would need to be provided. This filtering could be provided by discrete physical bandpass filters electrically connected to the sensor 7, or, if an A to D converter is employed as described herein, filtering of the signal from the sensor 7 can be accomplished by signal processing software in the controller 6. The use of frequency multiplexing to acquire the data for position determination can significantly increase the operating speed of the positioning system since measurements from generating coils can be taken simultaneously. Disadvantages of such a frequency multiplexing system are that it is more complex than a time multiplexed system and requires greater electrical bandwidth. A combination of time and frequency multiplexing could of course be used.

In both embodiments it is desirable that the quasi-static magnetic field generated by a coil is established quickly and is allowed to decay quickly. For this reason it is preferred to use a first order rather than a second order drive circuit. For the generating coils employed the field settles within one cycle of being switched on.

It will be appreciated that alternative configurations of both embodiments for different applications, for example locating a sensor within a two dimensional plane, are envisaged within the scope of the present invention.

As will be clear to one skilled in this art, the roles of the generating and sensing coils may be reversed while still benefitting from the advantages of the present invention. That is the sensing coil or coils may be used as field generating elements, and the generating coils may be used as field sensing elements.

This reversal of roles has particular advantage where a static field, such as that generated by a bar magnet is employed according to the first aspect of the invention, since such a field generating element must be effectively permanently “energised”. The reversal of roles allows the “sensor” permanently to generate a field which is sensed at each of the “generating elements” and the location and orientation of the “sensor” is then determined as before.

Consider a current I, flowing through a small planar coil of radius, b, (FIG. 16). The frequency of I is chosen to be sufficiently low such that static field distributions apply.

For a point P in the field whose distance R from the coil is such that R>>b, it is readily shown for example in D K Cheng, Field and Wave Electromagnetics, 2nd Ed, Addison Wesley, 1989, that $\begin{matrix} {{B_{R} = {\frac{{2\quad k} - {\cos \quad \theta}}{R^{3}}\quad {and}}},} & \text{(A-1)} \\ {B_{\theta} = \frac{\quad {k - {\sin \quad \theta}}}{R^{3}}} & \text{(A-2)} \end{matrix}$

where k_(e) is a known function of I and b. B_(R) and B_(θ) represent the vector components of the magnetic flux density at point P resolved along axes parallel to the line R and the angle θ. Note that, by convention, θ is measured from the axis of the coil.

In order to resolve the magnetic flux density at P onto a 3-dimensional cartesian coordinate system, consider first the coil in the y-z plane, centered on the origin (FIG. A-17).

If point P is distance x from the coil (i.e. origin) along the x-axis, and its vector distance is R, the distance in the y-z plane by Pythagoras is {square root over (R²−x²)}. Since R²=x²+y²+z², this distance reduces to {square root over (y²+z²)}, as shown. It then flows that, $\begin{matrix} {{\sin \quad \theta} = {\frac{\sqrt{y^{2} + z^{2}}}{R}\quad {and}}} & \left( {A\text{-}3} \right) \\ {{\cos \quad \theta} = \frac{x}{R}} & \left( {A\text{-}4} \right) \end{matrix}$

Resolving the magnetic flux density at P onto a cartesian system gives, for the x-axis component.

B _(x) =B _(R) cos θ−B _(θ) sin θ

From (A-1) and (A-2) this becomes, $B_{x} = {\frac{k_{c}}{R^{3}}\left( {{2\cos^{2}\theta} - {\sin^{2}\theta}} \right)}$

and from (A-3) and (A-4), $\begin{matrix} {B_{x} = {\frac{k_{c}}{R^{5}}\left( {{2x^{2}} - y^{2} - z^{2}} \right)}} & \left( {A\text{-}5} \right) \end{matrix}$

Resolving similarly onto the y-z plane gives.

B _(yz) =B _(R) sin φ+B _(θ) cos φ

which from (A-1) and (A-2) becomes, $B_{yz} = {\frac{k_{c}}{R^{3}}\left( {3\cos \quad {\theta sin\theta}} \right)}$

and from (A-3) and (A-4), $\begin{matrix} {B_{yz} = {\frac{k_{c}}{R^{5}}\left( {3 \times \sqrt{y^{2} + z^{2}}} \right)}} & \left( {A\text{-}6} \right) \end{matrix}$

Resolving the magnetic flux density at P into its y and z components (FIG. A-18) gives, $B_{y} = {{B_{yz}\cos \quad \varphi} = {{B_{yz}\left( \frac{y}{\sqrt{y^{2} + z^{2}}} \right)}\quad {and}}}$ $B_{z} = {{B_{yz}\sin \quad \varphi} = {B_{yz}\left( \frac{z}{\sqrt{y^{2} + z^{2}}} \right)}}$

From (A-6) these become, $\begin{matrix} {{B_{y} = {\frac{k_{c}}{R^{5}}\left( {3{xy}} \right)\quad {and}}},} & \left( {A\text{-}7} \right) \\ {B_{z} = {\frac{k_{c}}{R^{5}}\left( {3{xz}} \right)}} & \left( {A\text{-}8} \right) \end{matrix}$

For a coil (dipole) in the y-z plane, equations (A-5), (A-7) and (A-8) fully describe the resolved cartesian components of the magnetic flux density at a point P located at a radial distance R from the coil. The corresponding equations for coils in the x-y and x-z planes can be developed in an identical manner. The complete set of formulae can therefore be summarised thus,

For a coil in the y-z plane: $\begin{matrix} {B_{x} = {\frac{k_{c}}{R^{5}}\left( {{2x^{2}} - y^{2} - z^{2}} \right)}} & \left( {A\text{-}9} \right) \\ {B_{y} = {\frac{k_{c}}{R^{5}}\left( {3{xy}} \right)}} & \left( {A\text{-}10} \right) \\ {B_{z} = {\frac{k_{c}}{R^{5}}\left( {3{xz}} \right)}} & \left( {A\text{-}11} \right) \end{matrix}$

For a coil in the x-y plane: $\begin{matrix} {B_{x} = {\frac{k_{c}}{R^{5}}\left( {3{xz}} \right)}} & \left( {A\text{-}12} \right) \\ {B_{y} = {\frac{k_{c}}{R^{5}}\left( {3{yz}} \right)}} & \left( {A\text{-}13} \right) \\ {B_{z} = {\frac{k_{c}}{R^{5}}\left( {{2z^{2}} - x^{2} - y^{2}} \right)}} & \left( {A\text{-}14} \right) \end{matrix}$

For a coil in the x-z plane: $\begin{matrix} {B_{x} = {\frac{k_{c}}{R^{5}}\left( {3{xy}} \right)}} & \left( {A\text{-}15} \right) \\ {B_{y} = {\frac{k_{c}}{R^{5}}\left( {{2y^{2}} - x^{2} - z^{2}} \right)}} & \left( {A\text{-}16} \right) \\ {B_{z} = {\frac{k_{c}}{R^{5}}\left( {3{yz}} \right)}} & \left( {A\text{-}17} \right) \end{matrix}$ 

What is claimed is:
 1. A method of determining a location and an orientation of a field sensor relative to a plurality of magnetic field sources of known location, the method comprising the steps of: 1) energizing each field source and measuring a respective field generated by each field source at the field sensor; 2) for each field source, calculating, from the measurements of the field generated by the field source and an estimate of the orientation of the sensor, an estimate of the distance from that particular field source to the sensor; 3) utilizing the estimates of distance from step 2), and the known location of the field sources to calculate an estimate of the location of the sensor; 4) employing the estimated location of the sensor from step 3) and the measurements of the field at the sensor to calculate a new estimate of the orientation of the sensor; and 5) repeating steps 2) to 4) iteratively with step 2) employing the new estimate of sensor orientation from the preceding step 4), to improve the estimates of location and orientation of the sensor.
 2. A method as claimed in claim 1 wherein in step 1) each field source is energized in sequence so that only one field source is energized at any given time.
 3. A method as claimed in claim 1, wherein in step 1) at least two field sources are simultaneously energized, each of these at least two field sources being energized at a different frequency from the other simultaneously energized field sources(s).
 4. A method as claimed in claim 1, wherein at step 4), the estimated location of the sensor calculated in step 3) and the measurements of the field at the sensor are used to calculate, for each field source, the direction of the respective field at the sensor and from these field directions calculating a new estimate of the orientation of the sensor.
 5. A method as claimed in claim 4 wherein, at step 1), the initial estimate of the orientation of the sensor is taken to be the orientation as calculated by the immediately preceding application of the method or, if this is the first application of the method, the axis of the sensor is initially assumed to be directed towards the respective field source.
 6. A method of determining the location of a field sensor, relative to a field source, the method comprising the steps of: 1) energizing a single field source to establish a field, 2) measuring a value of the field strength at the field sensor which is dependent on the location of the sensor within the field, 3) repeating steps 1) and 2) for each field generating element, 4) calculating, by utilizing all the values measured in steps 2) and 3) and an estimate of the direction of the sensor from the field source, a direction dependent weighting factor for each field source so that the calculated field strength B is equal to the field strength B that would exist at the sensor if the axis of the field were directed towards the sensor, 5) iteratively altering the direction dependent weighting factors to maximize B and thus to determine to a desired level of accuracy the direction of the sensor from the field source, and 6) employing the measured values of the field strength to calculate the distance of the sensor from the field source and hence, from the direction of the sensor in step 5), the location of the sensor relative to the field source.
 7. A method of determining the location and the orientation of a field source relative to a plurality of field sensors of known location, the field source being energized and a measurement being made at the field sensors of the respective field generated by the field source, the method comprising the steps of: 1) for each field sensor calculating from measurements of the field detected at each sensor and an estimate of the orientation of the field source, an estimate of the distance from that particular sensor to the field source; and 2) utilizing the estimates of distance from step 1), and the known location of the field sensors to calculate an estimate of the location of the field source; 3) employing the estimated location of the field source from step 2) and the measurements of the field at the sensors to calculate a new estimate of the orientation of the field source; 4) repeating steps 1) to 3) iteratively, with step 1) employing the new estimate of field source orientation from the preceding step 3), to improve the estimates of location and orientation of the field source.
 8. A method as claimed in claim 7 wherein, at step 1), the initial estimate of the orientation of the sensor is taken to be the orientation as calculated by the immediately preceding application of the method or, if this is the first application of the method, the axis of the sensor is initially assumed to be directed towards the respective field source.
 9. An apparatus for determining the location and the orientation of a field sensor comprising: a plurality of field sources, energizing means operable for each field source to energize each of the plurality of field sources to produce a field within which the location and orientation of the sensor may be determined, measurement means, connected to the field sensor, to measure and output a parameter of the field at the sensor, and control means to control the energizing means, the control means comprising storing means to store parameters output by the measurement means, and calculating means to calculate, from the stored measurements of the fields, the location and orientation of the sensor, the calculating means comprising: location estimating means being operable to calculate, from the stored measurements of the fields and an estimate of the orientation of the sensor, an estimate of the distance of the sensor from each of the field sources and, using the estimates of distance and the known location of the field sources, to calculate an estimate of the location of the sensor; orientation estimating means being operable to calculate, from the estimate of sensor location by the location estimating means and the stored measurements of the field, a new estimate of the orientation of the sensor; means to iteratively improve the estimate of the location and orientation of the sensor, which means in use repeatedly employ the location and orientation estimating means in sequence, wherein the output of the orientation estimating means is adopted by the location estimating means as the new estimate of sensor orientation at each iteration.
 10. An apparatus as claimed in claim 9, wherein the energizing means are operable to sequentially energize each field source.
 11. An apparatus as claimed in claim 9, wherein the energizing means are operable to simultaneously energize at least two field sources, and to energize each simultaneously energized field source at a distinct frequency.
 12. An apparatus for determining the location of a field sensor as claimed in claim 9, wherein the field sensor comprises a coil of electrically conducting wire.
 13. An apparatus for determining the location of a field sensor as claimed in claim 9, wherein the plurality of field sources include three mutually orthogonal field sources.
 14. An endoscopy system for use in the endoscopy of a human or animal body, the endoscopy system comprising apparatus as claimed in claim
 9. 15. Apparatus for determining the location and orientation of a sensor as claimed in claim 9, wherein one or more of said sensors are attached to parts of a glove, the output of said apparatus providing data defining the location and orientation of the respective parts of a glove wearer's hand.
 16. Apparatus as claimed in claim 15, wherein one or more sensors are attached to fingers of the glove.
 17. An apparatus for determining the location of an object relative to a field source, the apparatus comprising: a plurality of field sources, energizing means to sequentially energize each of the field sources to produce a field within which the object may be located, a sensor, to be attached to the object, able to sense a parameter of the field, measurement means to measure and output parameters of the field sensed by the sensor when each field source is energized, and control means to control the energizing means, store the parameters output by the measurement means and calculate the location of the sensor, relative to the field source wherein the control means comprises, weighting means to weight each of the parameters, sensed by the sensor, by a direction dependent weighting factor, for each field source so that the calculated field strength B is equal to the field strength B that would exist at the sensor if the axis of the field were directed towards the sensor, means to iteratively alter the direction dependent weighting factors until a maximum value of the field strength is found, and to determine the direction of the sensor from the field source to a desired level of accuracy, and calculating means to calculate the distance of the sensor from the field source and hence the location of the sensor relative to the field source.
 18. An apparatus for determining the location of an object as claimed in claim 17, wherein the field source comprises three mutually orthogonal field generating elements and the sensor comprises three mutually orthogonal field sensing elements.
 19. An endoscopy system for use in the endoscopy of a human or animal body, the endoscopy system comprising apparatus as claimed in claim
 17. 